package com.liyu.mapper;

import com.liyu.pojo.Goods;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 商品接口
 *
 * @author Administrator
 * @date. 2022/10/14
 */
public interface GoodsMapper {
    /**
     * description: 获取商品列表
     *
     * @return {@link List<Goods>}
     * @author Yuhaotian
     * @date. 2022/10/14 18:22
     */
    List<Goods> selectAll();

    /**
     * description: 根据id查询商品
     *
     * @param id 商品编号
     * @return {@link Goods}
     * @author Yuhaotian
     * @date. 2022/10/14 18:29
     */
    Goods selectById(String id);

    /**
     * desc: 多条件查询商品
     *
     * @param goods 商品对象
     * @return {@link List<Goods>}
     * @author Yuhaotian
     * @date. 2022/10/14 19:00
     */
    List<Goods> selectByCondition(Goods goods);

    /**
     * desc: 添加商品
     *
     * @param goods 商品对象
     * @author Yuhaotian
     * @date. 2022/10/14 19:33
     */
    void add(Goods goods);

    /**
     * desc: 修改商品
     *
     * @param goods 商品对象
     * @return int
     * @author Yuhaotian
     * @date. 2022/10/14 19:38
     */
    int updateGoods(Goods goods);

    /**
     * desc: 修改商品状态
     *
     * @param status 商品状态
     * @param id     商品编号
     * @return int
     * @author Yuhaotian
     * @date. 2022/10/14 19:59
     */
    int updateStatus(@Param("status") int status, @Param("id") String id);

    /**
     * desc: 删除商品
     *
     * @param id 商品编号
     * @author Yuhaotian
     * @date. 2022/10/14 20:01
     */
    void deleteById(String id);

}
